An example of a configuration of a conventional ad-hoc network will be described. FIG. 13 is a diagram illustrating an example of the configuration of a conventional ad-hoc network. As illustrated in FIG. 13, the ad-hoc network includes a network server 1, a gateway (GW) 5, and nodes 10a to 10e and 10Y. The network server 1 and the GW 5 are connected with each other via a network 50. The nodes 10a to 10e and 10Y perform wireless communication with neighboring nodes thereof. In the following description, the nodes 10a to 10e and 10Y are collectively described as node 10 as needed.
The node 10 transmits and receives a hello message with neighboring nodes at fixed intervals to calculate communication quality of each route. The hello message includes routing information and communication quality information of a link between nodes. The node 10 constructs a plurality of routes to a final destination and decides an optimum route based on the calculation result of communication quality.
The node 10 further recalculates the communication quality of each route in the constructed routes by the actual performance in data communication and the periodic transmission and reception of a hello message with the neighboring node. The node 10 learns an optimum route and appropriately changes the communication route based on the result of recalculation.
FIGS. 14 to 16 are diagrams for explaining an example of the conventional nodes constructing routes. An example of constructing routes from the node 10Y to the GW 5 will be described here. The node 10 is assumed to hold a routing information table and a link table. The routing information table stores therein a route of good communication quality out of the routes reaching the final destination. The link table stores therein the information on the nodes that are wirelessly communicable with the node 10.
Now, a description will be made with reference to FIG. 14. The GW 5 generates and broadcasts a hello message based on the routing information table that the GW 5 holds when it comes to the timing of transmitting the hello message of the GW 5. The nodes 10a to 10c receive the hello message from the GW 5.
When the nodes 10a to 10c receive the hello message, the nodes 10a to 10c register the GW 5 as the destination in the respective routing information tables that the nodes 10a to 10c hold. The nodes 10a to 10c further calculate the communication quality with the routing information, the communication quality information, and others included in the hello message, and register the respective calculation results in the routing information tables and the link tables thereof. The nodes 10a to 10c are assumed not to rebroadcast the hello message received from the GW 5.
Now, a description will be made with reference to FIG. 15. The node 10b generates and broadcasts a hello message based on the routing information table that the node 10b holds when it comes to the timing of transmitting the hello message of the node 10b. The nodes 10a, 10c, 10d, 10e, and 10Y receive the hello message from the node 10b. The GW 5 also receives the hello message from the node 10b. For example, when the node 10Y receives the hello message, the node 10Y registers that the route addressed to the GW 5 is via the node 10b in the routing information table that the node 10Y holds. The node 10Y further calculates the communication quality with the routing information, the communication quality information, and others included in the hello message, and registers the result of calculation in the routing information table and the link table.
A description will be made with reference to FIG. 16. In the same manner as that of the node 10b, the nodes 10d and 10e broadcast hello messages when it comes to the timing of transmitting the hello message of the nodes 10d and 10e, and the node 10Y receives the hello message. Consequently, the node 10Y is able to construct candidate communication routes 6a to 6c addressed to the GW 5. The node 10Y decides an optimum route to the GW 5 by the respective route quality and others of the candidate communication routes 6a to 6c. 
In the above-described ad-hoc network, a plurality of routes are normally constructed, and thus even when one route is interrupted by a node abnormality, switching to another route permits data to be delivered to the final destination.
For example, in FIG. 16, it is assumed that an abnormality occurs to the node 10b while the node 10Y is using the communication route 6b as the optimum route to reach the GW 5. In this case, switching to the communication route 6a or 6c enables the node 10Y to deliver the data to the GW 5.
Conventional technologies are described in Japanese Laid-open Patent Publication No. 2007-181056 and Japanese Laid-open Patent Publication No. 2006-174118, for example.
In the above-described conventional technology, however, congestion may occur.
The following describes the reason why the congestion occurs. In the conventional ad-hoc network, when the route to the final destination is interrupted due to a node abnormality or the like, the route is switched and the data is retransmitted. Each node 10 here holds only the information on the neighboring nodes reaching the final destination. Therefore, even it is clear that the final destination is not reachable by switching routes when the network is viewed as a whole, the node alone is not able to determine that, and thus each node repeats the retransmission of data by switching the routes.
FIGS. 17 to 19 are diagrams for explaining an example of the occurrence of congestion. In the example illustrated in FIGS. 17 to 19, it is assumed that a plurality of routes are registered in the routing information table by the transmission and reception of a hello message. It is further assumed that the link between the GW 5 and the node 10b is cut off by temporal environmental changes.
Next, a description will be made with reference to FIG. 17. The situation described here is when the node 10Y transmits data addressed to the GW 5 as the final destination. The node 10Y refers to the routing information table to select an optimum route, and transmits the data to the neighboring node 10b, for example. The node 10b receives the data from the node 10Y. The node 10b then refers to the routing information table to select an optimum route and transmits the data to the GW 5. However, the link between the GW 5 and the node 10b is cut off, and thus the node 10b fails to perform the data transmission.
A description will be now made with reference to FIG. 18. The node 10b refers to the routing information table, switches routes, and transmits the data to the node 10d. The node 10d receives the data from the node 10b. The node 10d then refers to the routing information table to select an optimum route and transmits the data to the node 10a. The node 10a receives the data from the node 10d. The node 10a refers to the routing information table to select an optimum route and transmits the data to the node 10b. The node 10b receives the data from the node 10a. 
A description will be made with reference to FIG. 19. The node 10b refers to the routing information table and selects an unselected route out of the optimum routes reaching the GW 5. For example, the node 10b transmits the data to the node 10e. The node 10e receives the data from the node 10b. The node 10e then refers to the routing information table to select an optimum route and transmits the data to the node 10d. The node 10d receives the data from the node 10e. The node 10d refers to the routing information table and selects an unselected route out of the optimum routes reaching the GW 5. The node 10d transmits the data to the node 10b, for example.
As illustrated in FIGS. 17 to 19, when the link to the final destination is cut off, the data is never delivered to the final destination even when the data is transmitted by switching routes, and thus the switching of routes frequently occurs, thereby causing the congestion to take place. This occurs regardless of the number of nodes in the whole network, and thus it occurs even in a small-scale network as well as in a large-scale network.
In FIGS. 17 to 19, the situation of the node 10Y being the transmission source of data has been described. Consequently, when the nodes other than the node 10Y transmit the data addressed to the GW 5, much more pieces of data are to be transmitted and received via the network.
It is conceivable that the node 10 is configured to hold the routing information from the node 10 to the final destination and to determine whether to perform data transmission. In this case, however, the amount of data in the routing information table may be enormous, and thus the operation in a large-scale network is likely to be difficult.